Apparatus for tracking connection of service provider customers via customer use patterns

ABSTRACT

A method for identifying tracking accounts belonging to a customer of a service provider using profiles indicating customer patterns of use of the service. The profiles distinguish the account of the service provider customers from each other. Those profiles that substantially match are considered to belong to the same customer.

TECHNICAL FIELD

[0001] The present invention relates to a method and apparatus forobtaining information on service provider customers and, moreparticularly, to a method and apparatus for tracking customer connectionto a service provider using customer profiles indicating customer usepatterns.

BACKGROUND OF THE INVENTION

[0002] It is not uncommon for a customer of a service provider, such asan Internet service provider or a long-distance telephone serviceprovider, to obtain and maintain multiple accounts, eithersimultaneously or at different periods of time. Service providers oftenfind it desirable to match such multiple customer accounts with thesingle customer. This customer identification enables the serviceprovider to ensure continuity in the type of service provided to thecustomer, to identify highly valued customers and/or to identify lessdesirable customers or customers with delinquent accounts. Traditionalinformation, such as name and address, are usually used to perform thecustomer account matching. This method of account matching suffers fromcertain disadvantages.

[0003] More particularly, it is often difficult for the serviceproviders to perform the account matching on their own existing data.Therefore, service providers usually provide account information tooutside vendors who are paid to perform matching against theirdatabases. Since the service providers cannot utilize existing data toperform the matching, they must incur the cost of hiring outside vendorsto perform the task. In addition, it is often difficult for the outsidevendors to match multiple accounts belonging to a single customer usingtraditional identifying information, since this information is oftenentered differently for each account and is subject to frequent errorsin data entry. In sum, this method for customer account matching iscostly, and often inaccurate.

[0004] Therefore, a method and apparatus for tracking the connection ofcustomers of a service provider are needed which would enable theservice provider to easily and accurately track customer movement orconnection. The present invention was developed to accomplish these andother objectives.

SUMMARY OF THE INVENTION

[0005] In view of the foregoing, it is a principal object of the presentinvention to provide a method and apparatus that eliminates thedeficiencies of the prior art.

[0006] It is a further object of the present invention to provide amethod and apparatus for accurately tracking movement and/or connectionof service provider customers by accurately matching multiple accountsbelonging to a single customer.

[0007] It is yet another object of the present invention to provide amethod and apparatus for accurately matching multiple accounts belongingto a single customer by identifying customers based upon patterns incustomer use of the service.

[0008] It is a further object of the present invention to provide amethod and apparatus for accurately matching multiple accounts belongingto a single customer by comparing the pattern of use of a particularaccount with the patterns of use for each of the remaining accounts ofthe service, and identifying multiple accounts as belonging to a singlecustomer when the pattern of use for the particular accountsubstantially matches the pattern of use of at least one of theremaining accounts.

[0009] It is a further object of the present invention to provide amethod and apparatus for accurately matching multiple accounts belongingto a single customer by comparing the pattern of use of each account ina first sample of accounts being investigated with the pattern of usefor each of the accounts constituting a second sample of accounts of theservice provider, and determining that an account in the first sample ofaccounts and at least one account in the second sample of accountsbelong to a single customer when the pattern of use for the account inthe first sample of accounts substantially matches the pattern of use ofat least one of the accounts in the second sample of customers.

[0010] It is a further object of the present invention to provide amethod and apparatus for accurately matching multiple accounts belongingto a single customer by comparing the pattern of use of each of theaccounts in a first sample of accounts being investigated with thepatterns of use for each of the accounts constituting a second sample ofaccounts of the service provider, where the second sample of accountsconstitutes a subset of all of the accounts of the service provider, anddetermining that an account in the first sample of accounts and at leastone account in the second sample of accounts belong to a single customerwhen the pattern of use of the account substantially matches the patternof use of at least one of the accounts in the second sample ofcustomers.

[0011] It is yet another object of the present invention to provide amethod and apparatus for assigning customer history information tomultiple accounts belonging to a single customer by comparing thepattern of use of a particular account of the single customer with thepattern of use for the remaining accounts, identifying multiple accountsas belonging to the single customer when the pattern of use for theparticular account substantially matches the pattern of use of at leastone of the remaining accounts, and assigning the customer historyinformation of the matching remaining account(s) to the particularaccount.

[0012] These and other objects and features of the present inventionwill be apparent upon consideration of the following detaileddescription of preferred embodiments thereof, presented in connectionwith the following drawings in which like reference numerals identifylike elements throughout.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] In the drawings,

[0014]FIG. 1 illustrates an example of a telecommunications system;

[0015]FIG. 2 illustrates the basic elements of a system for performingthe method according to the present invention;

[0016]FIG. 3 illustrates a flow diagram of the steps performed in themethod according to the present invention;

[0017]FIG. 4 illustrates an example of customers of a service providerand the information obtained from the customers for performing themethod according to the present invention;

[0018]FIG. 5 illustrates an example of how one customer account isdistinguished from the remaining customer accounts in a sample accordingto the present invention; and

[0019]FIG. 6 illustrates another example of how of how one customeraccount is distinguished from the remaining customer accounts in asample according to the present invention.

DETAILED DESCRIPTION OF THE INVENTION

[0020] In order to facilitate the description of the present invention,the invention will be described with respect to the particular exampleof long-distance telephone service providers. Examples will be describedthat illustrate particular applications of the invention forlong-distance telephone service. The present invention, however, is notlimited to any particular service provider nor limited by the examplesdescribed herein. Therefore, the description of the embodiment thatfollows is for purposes of illustration and not limitation.

[0021] A particular application of the present invention is identifyingcustomers of a long-distance telephone service provider who have movedwithout informing the long-distance telephone service provider. Theidentification is accomplished by matching the customer's pre-move andpost-move calling patterns. For example, upon moving, a customer usuallynotifies their local telephone service provider to disconnect theirservice and close their account, and reconnect and open another accountat the new location. The customer often assumes that their long-distanceservice provider will be notified and will be able to match their newaccount with their past history. However, the information provided tothe long-distance provider from the local service provider does notdistinguish a “mover” from a “new connect”. Therefore, the long-distanceprovider cannot match the new account with the past history of thecustomer.

[0022] Another application of the invention with respect tolong-distance telephone service providers is to identify a customer whohas opened multiple accounts with different names or where the nameshave been entered differently by a data entry person (e.g., one accountunder Joseph Smith and another account under Ellen Smith or one accountunder Joseph Smith and another account under J. Smith). The presentinvention solves these and other problems by using customer callingpattern data to match multiple accounts belonging to a single customer.

[0023] Referring to FIG. 1, an exemplary telecommunications network 10is shown. Local switching offices 12 and 14 are connected to each otherby trunk 20, while local switching offices 16 and 18 are connected toeach other by trunk 22. Trunk 20 is used to route calls from a telephone26 served by the local switching office 12 to a telephone 28 serviced bythe terminating local switching office 14. Long-distance calls totelephone 32, for example, are processed by a long-distance network 30.Service within local access and transport areas for local calls is oftenprovided by local telephone exchange carriers such as Bell South, andservice between the local access and transport areas for long-distancecalls is often provided by interexchange carriers such as AT&T.

[0024]FIG. 2 illustrates the basic elements of a system for performingthe method according to the present invention. A data processing system34 receives the customer use detail information for each customer viainterface 33. The data processing system 34 uses the use detailinformation for each customer to generate customer profiles todistinguish customers from one another. The data processing system 34outputs a profile for each service provider customer based upon serviceuse patterns. In addition, it performs the account comparison step andoutputs probable matches based upon the result of the comparison, aswell as the overlapping information associated with the probable match.The output from the data processing system 34 may be supplied to amonitor 35, printer 36, and/or other output device 37. The customer usedata information may be obtained by any appropriate means utilized bythe service provider.

[0025] According to the example of the present invention describedherein, customers are characterized by the calls they make on thelong-distance network 30. The long-distance telephone service providerrecords call information for billing purposes. This data is recorded ata very low error rate. This data may include the telephone number makingthe call, the telephone number being called, the time of day, and/or theduration of the call, for example. This existing data may be used ascall detail information to determine the call patterns of the serviceprovider customers. The call patterns may then be used to identifymultiple accounts belonging to a single customer. Therefore, no outsidevendor services are required to perform the present invention.

[0026] A customer's calling use is, of course, variable, but the presentinvention exploits the fact that people tend to call certain numbers(e.g., family) repeatedly over time. By identifying customers oraccounts by groups of called numbers, the method according to thepresent invention is robust to variations in calling pattern over time.The general procedure is described below with reference to FIG. 3.

[0027] First, depending on the purpose of the matching, a sample ofknown customers of interest is identified in steps S1 and S2. The samplemay include all of the service provider customers or a subset of theservice provider customers. For example, if the service provider istrying to detect when a new account belongs to a high-value customer whorecently moved without informing the service provider, the sampleconsists of high-value customers who disconnected from the serviceprovider at about the same time that a new account(s) was opened. Then,the service provider obtains the list of all calls to or from thecustomers in the sample over a chosen time period, e.g., one or twomonths, as shown in step S3. In step S4, the service provider aggregatesany customer calls to or from a single number into a “feature.” Theservice provider eliminates from the set of features all calls that arerelatively frequent across the sample with respect to an experimentallychosen threshold. For example, if many of the customers in the samplecalled a major catalog merchant, the merchant's number has little powerfor distinguishing one customer from another, and it is ignored. Thenext step is to construct a profile or “fingerprint” for each customerin the sample, i.e., a subset of the features attributed to thecustomer, so that any two customers in the sample have differentprofiles (although their profiles may have some features in common), asshown in step S5.

[0028] Feature selection and profiling are also performed for each ofthe accounts being investigated (continuing with the movers example, theset of new accounts connected to the service provider), as shown insteps S6-S10 for identifying customers in a second sample of accounts tobe later compared to the first sample in steps S1-S5. The comparison foraccount matching of the first sample of accounts to the second sample ofaccounts is performed in step S1 to look for accounts in the two samplesthat have similar fingerprints. In step S12, probable matches aredetermined in accordance with the results of the comparison in step S11.

[0029] The method according to the present invention is not hindered byminor changes in customer use, because the method does not requireidentical fingerprints for a match. The matched accounts may not be forthe same customer, but they have a relatively high probability of beingso, and are cost-effective targets for further investigation, such as bycontacting the customer directly.

[0030] The method and apparatus according to the present inventionprovides numerous advantages to the service provider. More specifically,the information obtained by the matching method and apparatus may beused to provide continuity of service to customers and to identifyhigh-value customers. In addition, the information may be used to screennew accounts for creditworthiness. If a new customer's call patternmatches an old account with a history of delinquency or fraud, theservice provider would have the opportunity to restrict the new account,avoiding the generation of new uncollectible debt. The service providermay also use the information to pursue collection of an old account'sdebt, gaining revenue that would otherwise be lost.

[0031] A more detailed description of the method and apparatus accordingto the present invention as implemented in the telecommunicationsexample is set forth below.

[0032] Phase I. Profiling Customers

[0033] A long-distance customer's calling activity includes a sequenceof inbound and outbound calls. Those calls have a number of attributes,such as duration, time of day, time of week, etc. If a customer'scalling activity is observed over some time window, additionalattributes can be derived. Derived attributes may include frequency ofcalls made by the customer to a particular number, average talk time,total talk time, etc. It will be appreciated by those of ordinary skillin the art that many different attributes and derived attributes arepossible.

[0034] In the example illustrated in FIG. 4, customers A and B aresubscribers of a particular long-distance telephone service provider.Customer C is not a subscriber to the particular long-distance provider.Assume that customer A is a member of a first sample of customersrepresenting the customers to be investigated. The first sample may be asubset of all of the service provider customers. For example, assumethat the first sample of customers includes high value customers whodisconnected from the service provider around the time that a newconnection(s) occurred. Also assume that the profiles of the customersin this sample, including the profile of customer A, will be matched orcompared against the profiles of the service provider customersconstituting a second sample of customers. In the present example,assume that the second sample represents new account(s) of the serviceprovider.

[0035] In order to create a profile for customer A, customer A's callpattern for some period of time is monitored. The period of time may beselected by the service provider and need only be long enough to observea calling pattern. Step S20 in FIG. 4 illustrates the step of recordinginformation for each of customer A's calls. In the current example, theinformation recorded for customer A includes the number making the call,the number being called, the time of day, and the duration of the call.Of course, the recorded information may include more or less informationor different information than that shown in the example of FIG. 4.

[0036] A profile for customer A is generated from the recordedinformation, as shown in step S21. More particularly, for each ofcustomer A's calls, the call's frequency within the period of time maybe determined. In addition, each call may be distinguished as either aninbound call or an outbound call. In this framework, customer A's calldetail may be defined by a set of features (phone numbers), eachdetermined uniquely by a number called and a direction(inbound/outbound). More formally, a feature of customer A may bedefined to be the pair:

f=(c, I/O indicator)

[0037] where f=a feature (Billed Telephone Number (BTN)); c=number (BTN)called by A (outbound call) or the number (BTN) which called A (inboundcall); and the I/O indicator=1 for inbound calls or 0 for outboundcalls. Also, let the frequency φ_(Af) be the ratio of calls A made(received) to (from) c relative to all calls A made (received).

[0038] Customer A is identified by its BTN. Calls c are identified bytheir BTNs as well. If an outbound call is made by A to c, c doesn'teven have to be a customer of the service provider. For example, in FIG.4, customer A may place a call to customer C, who is not a customer ofthe particular service provider (i.e., customers A and C subscribe todifferent long-distance telephone service providers). All calls passingthrough A's service provider's network are observed. Therefore, the datafor creating the customer profile will include all calls made bycustomer A, even if the recipient is not a customer of the serviceprovider. The reverse is not true, however, because a call from anon-subscriber may reach customer A without touching the serviceprovider network to which customer A subscribes. Therefore, for inboundcalls, only calls coming from the customers of the service provider towhich A subscribes are observed. In FIG. 4, this means that only callsfrom customer B to customer A are observed, as shown in Step S21. Thesteps shown in FIG. 4 correspond to steps S1-S4 in FIG. 3.

[0039] The list of features of customer A can be large, consisting ofall calls that “touched” customer A in the given time window. Some ofthose calls may be incidental, while some may be part of a consistentpattern specific to customer A. The goal of profiling is tosubstantially reduce the number of features to be included in customerA's profile, and still be able to differentiate between customer A andall other customers in the sample. Therefore, features that areincidental may be eliminated. This may be accomplished by selecting afrequency threshold τ_(h), and including feature f in the list offeatures for customer A only if the frequency φ_(Af) exceeds thefrequency threshold τ_(f). In calculating the threshold τ_(f), onlycalls to/from customers in the sample of profiled customers areconsidered. Therefore τ_(f) is based on the sample data. The thresholdcan be selected based upon experience of the service provider, onexperiments performed by the service provider or based on training. Thethreshold varies depending upon the service provider and on the needs ofthe service provider. Therefore, any suitable method for selecting thethreshold may be used. The goal is to create a calling profile or“fingerprint” for customer A, as shown in step S5 in FIG. 3, such that:

[0040] (i) the profile allows the service provider to distinguishcustomer A from all the other customers in the sample;

[0041] (ii) the profile consists of as few features as possible;

[0042] (iii) the features in the profile either are unique to customer Aor appear on the feature list of as few other customers as possible; and

[0043] (iv) the features in the profile are with high probability a partof customer A's typical pattern.

[0044] Step (iv) can be accomplished by limiting feature inclusion withappropriate thresholds on φ_(Af), while steps (i), (ii) and (iii) can beaccomplished with an integer optimization model of set covering, asdiscussed below.

[0045] Set Covering Problem According to a First Embodiment

[0046] For any set S, let |S| represent the number of members of S. Letthe set Ω be the first sample of customers, with |Ω|=m+1. Let AεΩ be acustomer to be profiled, and let F_(A) be the list of all features f ofcustomer A whose frequencies φ_(Af) pass their associated thresholdsτ_(f). Let n=|F_(A)|. Consider customer BεΩ, B≠A. Customer A's patternis determined to differ significantly from customer B's with respect tofeature f if one of the two passes threshold τ_(f) and the other doesnot, i.e.,

A≠ _(f) B if and only if φ_(Af)>τ_(f) and φ_(Bf)<τ_(f) (or vice versa).

[0047] For every feature f from the list F_(A), create a set S_(f)={B:φ_(Bf)≦τ_(f)}. S_(f) is the subset of Ω such that BεS_(f) if and only ifA≠_(f)B. Then

S_(f) is the set of all customers in Ω that differ significantly fromcustomer A on at least one feature. Assume that

S_(f)=Ω\A; that is, no customer other than customer A has a list offeatures identical with customer A. It follows, that |

S_(f)|=m. The problem of minimizing the number of features used todistinguish customer A can be formulated as minimizing the number ofsets S_(f) needed to cover Ω\A, as follows:

[0048] Let a_(Bf)=1 if BεS_(f), and 0 otherwise.

[0049] Let x_(f)=1 if f is selected, and 0 otherwise.

[0050] minimize $\sum\limits_{f = 1}^{n}\quad x_{f}$

[0051] subject to${\sum\limits_{f = 1}^{n}{a_{{B\quad f}\quad}\quad x_{f}}} \geq 1$

[0052] for B=1, . . . , m

[0053] and x_(f)=0 or 1 for fεF_(A).

[0054] Given the optimal solution x*, cover F*={f: x_(f)*=1} provides aminimal set of features establishing customer A as distinctly differentfrom each customer B in the sample to be investigated. This integerprogram is an example of the set covering problem.

[0055] Greedy Algorithm

[0056] The set covering problem can be solved for each customer. Whenthere are a large number of customers (e.g., 1.5 million) disconnectingeach month, computational efficiency is essential, so a global optimummay not be sought. The set covering problem can be efficiently solved bya greedy heuristic as follows: Step 0: F* = Ø; Ω* = Ω\A. Step 1: Selectf such that |S_(f)| = max{ |S_(j)| : j ε FA\F*} Step 2: F* = F* ∪ {f};S_(j) = S_(j)\S_(f) for all j εFA\F*; Ω* = Ω*\S_(f); Step 3: If Ω* = Ø,STOP and output cover F*. Otherwise, go to Step 1.

[0057] Generalized Set Covering Problem According to the SecondEmbodiment

[0058] According to this embodiment, a generalized set covering problemis used to accomplish steps (i), (ii) and (iii), noted above withrespect to profiling or fingerprinting. The generalized set coveringformulation looks for a cover in which every element is covered k times(belongs to at least k sets). k may be defined as the depth of thecover. This model may be more appropriate for obtaining a robustprofile, so that a customer whose call pattern changes to some degreefollowing a move can still be recognized. Multi-covering allowsselection of more features than a regular set covering. In addition,different customers can be covered to different depths when appropriate.For example, it may be desirable to cover customer B₁, who has a largenumber of features, more times than customer B₂, whose list of featuresis much smaller.

[0059] For each customer B, let k_(B) be the desired depth of coverage.Then the multicover formulation is as follows:

[0060] minimize $\sum\limits_{f = 1}^{n}\quad x_{f}$

[0061] subject to${\sum\limits_{f = 1}^{n}{a_{B\quad f}\quad x_{f}}} \geq k_{B}$

[0062] for B=1, . . . , m

[0063] and x_(f)=0 or 1 for fεF_(A)

[0064] Cover F*={f: x_(f)=1} provides a minimal set of featuresestablishing customer A as distinct from each customer B in the sampleto be profiled at the level of coverage desired for robustness. ModifiedGreedy Algorithm: Step 0: F* = Ø; Ω* = Ω\A Step 1: Select f such that|S_(f)| = max {|S_(j)| : j ε FA\F*} Step 2: F* = F* ∪ {f} Step 3: Forall B ε S_(f): k_(B) = k_(B) − 1; if k_(B) = 0, Ω* = Ω*\B andS_(j)=S_(j)\B for all j ε F_(A)\F* Step 4: If Ω* = Ø, STOP and outputcover F* If F* = F_(A), STOP; no cover of depth k exists. Otherwise, goto Step 1.

[0065] In FIG. 5, a feature f is shown with a line connecting it to amember of the sample (A, B1, B2, B3) only if f passes the threshold forthat member. Customer A, the customer being profiled, is connected toall of the features. Thus, customer B1 can be covered, for example, onceby choosing any feature that has no connecting line to B1. In thefingerprint of customer A pictured in FIG. 5, coverage for each of thecustomers B1, B2, B3 is at depth 3. The greedy algorithm may firstinclude in the profile the two features (5 and 7) that are unique tocustomer A. This gives each of customers B 1, B2, and B3 coverage ofdepth 2. Next, feature 1 may be included in the profile. It coverscustomers B2 and B3, which now have coverage of depth 3. Finally,feature 2 is included, which covers customers B1 and B3. Now the depthof coverage for customers B1 and B2 equals 3, while the depth ofcoverage for customer B3 equals 4. In this example, customer A has afingerprint of size 4 (marked by thicker lines).

[0066] If a customer being fingerprinted has at least K unique features(that is, features which do not appear in the call detail of theremaining customers in the sample being profiled) and K≧max_(B){k_(B)},then the set covering model may not be necessary, because a collectionof K unique features can be used for a profile. In the example picturedin FIG. 6, the fingerprint of customer A consists of 5 features, all ofwhich are unique to customer A. Customers B1, B2, B3 are all covered atthe depth of 5. This saves computing time by applying the set coveringalgorithm only in cases where there are not enough unique features.

[0067] The customer profile should be stable to be of use. In thepresent example, the customer profile may be considered as stable if,for example, a fingerprint including at least 5 features can be found ineach month, and either at least 30% of the features remain unchangedfrom month to month or at least three features remain unchanged frommonth to month. However, the stability of a fingerprint can be definedas appropriate for the particular service provider.

[0068] Phase II: Matching Customers to Profiles

[0069] Referring again to FIG. 3, in steps S1 and S2, the phone numbersof customers to be profiled, such as customer A in FIG. 4, aredetermined. In step S3, call details of calls over the service providernetwork involving these customers are determined over a predeterminedperiod of time. In step S4, calls for a particular number appearing morethan once are aggregated into a feature, and in step S5 the appropriatealgorithms, as discussed above, are applied to choose features thatuniquely identify as many customers as possible of the customers to beprofiled. In steps S6 and S7, the phone numbers of customers to berecognized or new connect customers are determined. In step S8, the calldetails of calls over the service provider network involving new connectcustomers are determined over a predetermined period of time. Thispredetermined period of may be the same, less than or more than the timeperiod in step S3. In step S9, calls for one number are aggregated intoa feature, and in step S10, the appropriate algorithms, as discussedabove, are applied to choose features that uniquely identify as manycustomers in this group as possible. In step S11, the profiles of thecustomers from the second sample of customers being investigated arecompared with the profiles of the first sample of customers, includingcustomers A and B. When a profile in one group overlaps a profile in theother group, it is determined that there is a strong possibility of amatch in step S12, indicating that the profiles correspond to accountsbelonging to the same customer. The service provider may act on resultsindicating a strong possibility of a match by further investigating theparticular accounts and possibly contacting the customer directly.

[0070] According to the present invention, as described above withrespect to the example of a telecommunications system and along-distance telephone service provider, multiple accounts belonging toa single customer may be easily and accurately determined by the serviceprovider. Therefore, according to the present invention, accurateresults can be obtained without requiring the services of an outsidevendor.

[0071] While particular embodiments of the invention have been shown anddescribed, it is recognized that various modifications thereof willoccur to those skilled in the art without departing from the spirit andscope of the invention.

We claim:
 1. A method for tracking telecommunication customerscomprising: employing a set of call detail information records to createa set of features for each putative customer in said set, where eachputative customer is identified by one or more attributes, and wherefeature in said set relates to calls made by said putative customer toan identified telephone number, or made by said identified telephonenumber to said putative customer; and analyzing said set of features toidentify two of putative customers with calling patterns that indicate,with a probability in excess of a preselected threshold, that theputative customers are in reality a single customer.
 2. The method ofclaim 1 where said set is composed of two sets, from two different timeintervals.
 3. The method of claim 1 were said feature is an aggregate ofcalls made by said customer to a number, or an aggregate of calls madeby said customer by said number.
 4. The method of claim 1 where said setof features is a set that corresponds to information on all calls madeby said customer, or all calls made to said customer, reduced bydiscarding calls that fail to meet a predetermined usefulness threshold.5. The method of claim 4 where said step of analyzing employs analgorithm for solving a set covering problem.
 6. The method of claim 4where said step of analyzing considers, in analyzing the features ofeach customer, only those features that are necessary to distinguishsaid customer from other customers.
 7. A method for trackingtelecommunication customers comprising: employing a first set of calldetail information records to create a set of features for each customerin said set, where each customer is identified by one or moreattributes, and where feature in said set relates to calls made by saidcustomer to an identified telephone number, or made by said identifiedtelephone number to said customer; employing a second set of call detailinformation records to create a set of features for each customer insaid set, where each customer is identified by one or more attributes,and where feature in said set relates to calls made by said customer toan identified telephone number, or made by said identified telephonenumber to said customer; analyzing said set of features created fromsaid first set and from said second set to associate customers in saidfirst set with customers in said second set, where a customer in saidfirst set is associated with a customer in said second set when acalling pattern of said customer in said first set, as evidenced by saidfeatures of said customer in said first set, and a calling pattern ofsaid customer in said second set, as evidenced by said features of saidcustomer in said second set indicate, with a probability in excess of apreselected value, that said customer in said first set and saidcustomer in said second set are one and the same customer.
 8. The methodof claim 7 were said feature is an aggregate of calls made by saidcustomer to a number, or an aggregate of calls made by said customer bysaid number.
 9. The method of claim 8 where, in connection with each ofsaid features, frequency of calls is considered.
 10. The method of claim8 where, in connection with each of said features, number of calls isconsidered.
 11. The method of claim 8 where, in connection with each ofsaid features, duration of calls is considered.
 12. The method of claim7 where said set of features is a set that corresponds to information onall calls made by said customer, or all calls made to said customer,reduced by discarding calls that fail to meet a predetermined usefulnessthreshold.
 13. The method of claim 12 where said step of analyzingemploys an algorithm for solving a set covering problem.
 14. The methodof claim 12 where said step of analyzing considers, in analyzing thefeatures of each customer, only those features that are necessary todistinguish said customer from other customers.